package com.industrial.premu.service;

import com.industrial.common.core.web.domain.AjaxResult;
import com.industrial.premu.domain.PreMuAnalysisPolicyImple;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface IPreMuAnalysisPolicyImpleService {

    /**
     * 查询差别化政策执行分析
     *
     * @param baseId 差别化政策执行分析主键
     * @return 差别化政策执行分析
     */
    public PreMuAnalysisPolicyImple selectPreMuAnalysisPolicyImpleByBaseId(String baseId);

    /**
     * 查询差别化政策执行分析列表
     *
     * @param preMuAnalysisPolicyImple 差别化政策执行分析
     * @return 差别化政策执行分析集合
     */
    public List<PreMuAnalysisPolicyImple> selectPreMuAnalysisPolicyImpleList(PreMuAnalysisPolicyImple preMuAnalysisPolicyImple);

    /**
     * 新增差别化政策执行分析
     *
     * @param preMuAnalysisPolicyImple 差别化政策执行分析
     * @return 结果
     */
    public int insertPreMuAnalysisPolicyImple(PreMuAnalysisPolicyImple preMuAnalysisPolicyImple);

    /**
     * 修改差别化政策执行分析
     *
     * @param preMuAnalysisPolicyImple 差别化政策执行分析
     * @return 结果
     */
    public int updatePreMuAnalysisPolicyImple(PreMuAnalysisPolicyImple preMuAnalysisPolicyImple);

    /**
     * 批量删除差别化政策执行分析
     *
     * @param baseIds 需要删除的差别化政策执行分析主键集合
     * @return 结果
     */
    public int deletePreMuAnalysisPolicyImpleByBaseIds(String[] baseIds);

    /**
     * 删除差别化政策执行分析信息
     *
     * @param baseId 差别化政策执行分析主键
     * @return 结果
     */
    public int deletePreMuAnalysisPolicyImpleByBaseId(String baseId);

    AjaxResult importTemplateData(MultipartFile file);

    /**
     * 查询报告
     * @param params
     * @return
     */
    AjaxResult queryBgDetailCount(PreMuAnalysisPolicyImple params);

    /**
     * 查谒正向反向激励的占比
     * @return
     */
    AjaxResult queryZfjl(PreMuAnalysisPolicyImple params);

    AjaxResult queryCbhzcZzt(PreMuAnalysisPolicyImple params);

    AjaxResult queryReleaseDept(PreMuAnalysisPolicyImple params);

    AjaxResult queryCountyPolicyDetailInfo(PreMuAnalysisPolicyImple params);

    AjaxResult selectYdWz(PreMuAnalysisPolicyImple params);
}
